🤖 I. 컴퓨팅 시스템 > 03 피지컬 컴퓨팅

피지컬 컴퓨팅

성취기준[9정01-02] 피지컬 컴퓨팅의 개념을 이해하고, 생활 속에서 적용된 사례 조사를 통해 컴퓨팅 시스템의 필요성과 가치를 판단한다.[9정01-03] 문제 해결 목적에 맞는 피지컬 컴퓨팅 구성요소를 선택하여 시스템을 구상한다.

센서로 세상을 보고, LED와 모터로 세상을 움직여요!
손바닥만 한 컴퓨터 마이크로비트와 블록 코딩 메이크코드
나만의 스마트 기기를 직접 만들어 봅시다 🚀

직접 만지는 시뮬레이터 4종
실물 사진
블록 코딩

학습 목표

  • 피지컬 컴퓨팅의 뜻과 입력·처리·출력의 동작 흐름을 설명할 수 있다.
  • 마이크로비트의 입력 장치(센서·버튼)와 출력 장치를 구분해 설명할 수 있다.
  • 메이크코드의 블록을 조립해 간단한 프로그램을 만들 수 있다.
  • 센서 입력에 따라 조건·반복으로 반응하는 프로그램의 원리를 이해할 수 있다.
  • 실생활 속 피지컬 컴퓨팅 사례를 찾고 그 가치와 영향을 판단할 수 있다.

생각 열기 🤔

어두워지면 저절로 켜지는 가로등, 손을 대면 물이 나오는 수도꼭지, 내 동작을 따라 움직이는 게임 캐릭터…
이 기기들은 어떻게 우리의 행동과 주변 환경을 알아채고 스스로 반응할까요?

💡

자동 가로등

빛 센서

🚿

자동 수도꼭지

거리 센서

🎮

동작 인식 게임

동작 센서

🤖

로봇 청소기

거리 센서

💡 비밀은 바로 "센서"! 컴퓨터가 센서로 세상을 느끼고 직접 반응하게 만드는 것이 피지컬 컴퓨팅이에요.

1. 피지컬 컴퓨팅이란?

Physical Computing

📚 정의

피지컬 컴퓨팅(Physical Computing)은 컴퓨터가 현실 세계와 직접 상호작용하도록 만드는 기술이에요. 화면 속에서만 움직이는 보통의 프로그램과 달리, 센서로 주변 환경(빛·온도·소리·움직임 등)을 입력받아 프로그램으로 처리하고, LED·모터·스피커 같은 장치로 현실에 출력해 반응합니다.

🔄 피지컬 컴퓨팅의 동작 흐름

모든 피지컬 컴퓨팅은 입력 → 처리 → 출력 세 단계를 거쳐요.

📡 ① 입력 센서로 환경을 감지 🧠 ② 처리 프로그램으로 판단 💡 ③ 출력 장치로 현실에 반응

예) 빛 센서가 어둡다고 감지

예) "어두우면 켜라" 라고 판단

예) LED 가로등을

우리 주변의 피지컬 컴퓨팅

🚦

스마트 신호등

교통량을 감지해 신호 시간을 자동 조절

🤖

로봇 청소기

거리 센서로 장애물을 피하며 청소

스마트 워치

심박수·움직임을 감지해 건강 정보 제공

🌡️

스마트 에어컨

실내 온도를 감지해 냉방을 자동 조절

🚗

자율주행 자동차

카메라·레이더로 주변을 인식해 운전

🚪

자동문

사람을 감지해 자동으로 열고 닫힘

피지컬 컴퓨팅, 이런 부품으로 만들어요

실제로 학교에서 많이 쓰는 보드·센서·액추에이터예요. 입력처리출력 순서로 살펴보세요.

HC-SR04 초음파 거리 센서 모듈
입력 · 센서

초음파 센서

소리를 쏘아 물체까지의 거리를 잽니다. 로봇 청소기·주차 보조에 쓰여요.

© SparkFun · CC BY 2.0 · Wikimedia Commons

아두이노 우노 보드
처리 · 컨트롤러

아두이노 (Arduino)

센서 입력을 받아 프로그램대로 장치를 제어하는 대표적인 보드예요.

© SparkFun Electronics · CC BY 2.0 · Wikimedia Commons

라즈베리파이 4 모델 B 단일 보드 컴퓨터
처리 · 미니 컴퓨터

라즈베리파이

손바닥만 한 진짜 컴퓨터예요. 운영 체제를 올려 복잡한 일도 처리해요.

© Laserlicht · CC BY-SA 4.0 · Wikimedia Commons

SG90 마이크로 서보모터
출력 · 액추에이터

서보모터

정해진 각도만큼 회전합니다. 로봇 팔·자동문·바리케이드를 움직여요.

© Suyash Dwivedi · CC BY-SA 4.0 · Wikimedia Commons

400핀 브레드보드(빵판)
연결 · 회로

브레드보드

납땜 없이 부품을 꽂아 회로를 연결하는 실험용 판이에요.

© oomlout · CC BY-SA 2.0 · Wikimedia Commons

🧩

그리고… 마이크로비트!

우리가 이 단원에서 직접 다룰 보드예요. 바로 아래에서 만나 볼까요?

2. 마이크로비트 만나기

Meet the micro:bit

🧩 마이크로비트란?

마이크로비트(micro:bit)는 영국 BBC가 학생들의 컴퓨팅 교육을 위해 만든 손바닥만 한 작은 컴퓨터예요. 이름 속 'micro'(작다)와 'bit'(컴퓨터 정보의 기본 단위)이 그 특징을 알려 주죠! 버튼·LED·여러 센서가 하나의 보드에 모두 들어 있어서, 추가 부품 없이도 곧바로 멋진 작품을 만들 수 있어요.

마이크로비트 앞면 — 5x5 LED 화면과 A·B 버튼
앞면 (Front)

5×5 LED 화면, 버튼 A·B, 그리고 아래쪽에 악어 클립을 끼우는 핀(0·1·2·3V·GND)이 보여요.

© Jodiepedia, Wikimedia Commons (CC BY 2.0)

마이크로비트 뒷면 — 프로세서, 센서, 단자 표시
뒷면 (Back)

프로세서(두뇌), 가속도·자기 센서, 스피커·마이크, USB·전지 단자가 모여 있어요. (사진은 V2)

© SimonWaldherr, Wikimedia Commons (CC BY 4.0)

마이크로비트의 주요 구성 요소

📥 입력 장치 — 세상을 "느끼는" 부분

버튼 A, B

눌렸는지 감지하는 입력 버튼

온도 센서

주변의 온도를 측정

빛 센서

밝기를 0~255 단계로 측정 (LED가 센서 역할)

가속도 센서

기울기·흔들림·움직임을 감지

자기(나침반) 센서

방위(동서남북)를 감지

소리 센서 V2

주변 소리의 크기를 측정

📤 출력 장치 — 현실에 "반응하는" 부분

5×5 LED 화면

25개의 LED로 글자·숫자·아이콘 표시

스피커 V2

멜로디·효과음 재생

무선 통신

다른 마이크로비트와 신호를 주고받음

🔌 확장 핀 (Pin) — 더 넓은 세상과 연결

아래쪽 금색 핀에 외부 부품(LED, 스피커, 모터, 추가 센서 등)을 연결할 수 있어요. 특히 큰 구멍이 뚫린 P0, P1, P2 핀은 악어 클립으로 손쉽게 연결할 수 있어, 더 큰 작품으로 확장하기 좋아요.

3. 메이크코드로 프로그래밍하기

Coding with MakeCode

🎨 메이크코드란?

메이크코드(MakeCode)는 마이크로소프트가 만든 블록 코딩 도구예요. 레고처럼 명령어 블록을 끼워 맞춰 프로그램을 만들 수 있어, 글자를 일일이 입력하지 않아도 되니 쉽고 재미있어요. 만든 블록은 자동으로 자바스크립트·파이썬 코드로도 바뀌어, 텍스트 코딩으로 자연스럽게 넘어갈 수 있답니다.

🌐 사이트 주소: makecode.microbit.org
📱 별도 설치 없이 웹 브라우저에서 바로 사용할 수 있어요!

메이크코드 화면 구성

📱

① 시뮬레이터

왼쪽의 가상 마이크로비트. 실제 보드가 없어도 프로그램이 어떻게 동작하는지 바로 확인!

🧱

② 블록 서랍

기본·입력·LED·음악 등 카테고리별로 블록이 색깔별로 정리되어 있어요.

🎨

③ 작업 영역

블록을 끌어다 놓고 조립하는 곳. 프로그램이 만들어지는 무대예요!

자주 쓰는 블록 카테고리

기본

시작하면 · 무한 반복

입력

버튼·흔들림 감지

LED

LED 켜기·끄기·그리기

음악

멜로디·효과음 재생

반복

정해진 횟수만큼 반복

논리

만약 ~이면 (조건)

🔬 시뮬레이터 ① · LED 화면 그리기

실습 1 — 난이도 ⭐ · LED를 직접 켜고 꺼 보세요!

LED 칸을 클릭하면 켜지고, 다시 누르면 꺼져요. 아래 그림 버튼을 누르면 한 번에 모양이 그려집니다. 메이크코드의 「LED 출력」 블록과 똑같은 원리예요!

A B

0   1   2   3V   GND

✨ 모양 불러오기

켜진 LED 0개 / 25개

🧱 같은 동작을 하는 메이크코드 블록

시작하면
LED 출력 (그린 모양)

🔬 시뮬레이터 ② · 버튼 누르면 글자 흐르기

실습 2 — 난이도 ⭐⭐ · 입력(버튼)에 따라 출력(글자)이 달라져요!

아래 A·B 버튼을 눌러 보세요. 누른 버튼에 따라 다른 메시지가 5×5 화면을 흘러갑니다. 글자 수가 화면 칸 수보다 많으니까 옆으로 스크롤하며 보여 주는 거예요.

버튼을 눌러 메시지를 보여 주세요.

🎮 버튼별 동작

  • A "HELLO" 흐르기
  • B "BYE" 흐르기
  • A+B "MICRO:BIT" 흐르기

🧱 같은 동작을 하는 메이크코드 블록

버튼 A 누르면
문자열 출력 "HELLO"

🔬 시뮬레이터 ③ · 흔들면 주사위!

실습 3 — 난이도 ⭐⭐⭐ · 가속도 센서 + 랜덤(난수)

버튼을 눌러 마이크로비트를 흔들어 보세요. 가속도 센서가 흔들림을 감지하면 1~6 중 무작위 숫자를 골라 점(눈)으로 보여 줘요. 진짜 주사위처럼요!

A B

나온 수: 5

버튼을 눌러 마이크로비트를 흔들어 보세요!

🧱 같은 동작을 하는 메이크코드 블록

흔들림 감지하면
수 출력 ▸ 랜덤 1~6

🔬 시뮬레이터 ④ · 빛 센서 자동 가로등

실습 4 — 난이도 ⭐⭐⭐⭐ · 센서 입력 + 조건(만약~이면)

아래 슬라이더로 주변 밝기를 바꿔 보세요. 빛 센서 값이 50보다 작아지면(어두우면) 가로등이 자동으로 켜지고, 밝아지면 꺼져요. 조건문으로 스스로 판단하는 거예요!

☀️
🌙 어두움 (0)밝음 (255) ☀️
슬라이더를 움직여 보세요.

🧱 같은 동작을 하는 메이크코드 블록

무한 반복
만약 (밝기 < 50) 이면
💡 LED 모두 켜기
아니면
⬛ LED 모두 끄기

📚 이 작품에 쓰인 개념

센서 입력 조건(만약~이면) 반복 LED 출력

🎨 프로젝트 활동: 나만의 작품 만들기

친구와 함께 마이크로비트로 작품을 기획해 보세요!

아래 아이디어 중 하나를 골라 친구와 협력해 만들어 보세요. 각 작품이 어떤 입력 → 처리 → 출력으로 동작할지 먼저 그려 본 뒤 코딩하면 훨씬 쉬워요. 더 좋은 아이디어가 있다면 직접 기획해도 좋아요!

🎵

디지털 악기

버튼별로 다른 음을 내는 미니 피아노

가위바위보 게임

흔들면 가위·바위·보 중 하나가 랜덤 표시

📏

기울기 미로

기울인 방향으로 점이 움직이는 미로 게임

🌡️

막대 온도계

현재 온도를 LED 막대 높이로 시각화

🚨

도난 경보기

움직임이 감지되면 소리와 LED로 경고

📡

친구와 무선 통신

두 마이크로비트가 메시지를 주고받기

활동하기 — 진짜 메이크코드 열어 보기

위 시뮬레이터로 원리를 익혔다면, 이제 진짜 메이크코드에서 똑같이 만들어 볼까요? 아래 순서를 따라 해 보세요.

  1. 1

    makecode.microbit.org 에 접속하고 「새 프로젝트」를 눌러요.

  2. 2

    기본 → LED 출력 블록을 「시작하면」 안에 넣고, 점을 클릭해 하트를 그려 보세요. (시뮬레이터 ①과 똑같죠?)

  3. 3

    입력 → 버튼 A 누르면 블록에 「문자열 출력」을 넣어 내 이름을 흐르게 해 보세요.

  4. 4

    왼쪽 가상 시뮬레이터에서 결과를 확인하고, 실물 보드가 있다면 USB로 연결해 옮겨 보세요!

스스로 점검하기

Self-Check Quiz · 총 8문제

1

피지컬 컴퓨팅에 대한 설명으로 옳은 것은?

2

피지컬 컴퓨팅의 동작 흐름 순서로 옳은 것은?

3

마이크로비트에 들어 있지 않은 것은?

4

다음 중 마이크로비트의 입력 장치가 아닌 것은?

5

메이크코드(MakeCode)의 가장 큰 특징은?

6

'어두워지면 켜지는 자동 가로등'을 만들 때 꼭 필요한 센서는?

7

마이크로비트를 흔들 때 그 움직임을 감지하는 센서는?

8

"만약 밝기가 50보다 작으면 …, 아니면 …"처럼 상황에 따라 다르게 동작하게 하는 명령은?